# Copyright 2024 The Pigweed Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.

load("@rules_cc//cc/toolchains:args.bzl", "cc_args")

licenses(["notice"])

cc_args(
    name = "common_cc",
    actions = [
        "@rules_cc//cc/toolchains/actions:compile_actions",
    ],
    args = [
        # TODO(b/380001331) Select these flags based on Kconfigs
        "-ftls-model=local-exec",  # CONFIG_THREAD_LOCAL_STORAGE
        "-mtp=soft",  # CONFIG_THREAD_LOCAL_STORAGE
        "-mfp16-format=ieee",  # CONFIG_FP16_IEEE
        "-mfloat-abi=soft",  # !CONFIG_ARM64 && !CONFIG_FPU
        "-gdwarf-4",  # GCC 11 by default emits DWARF v5 which cannot be parsed by pyelftools.
    ],
    visibility = ["//pw_toolchain/zephyr:__subpackages__"],
)
